Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

629
Vistas
Actualización en tiempo real en la aplicación Django usando MySQL <> WebSocket

Necesito obtener datos continuamente de una base de datos MySQL que obtiene datos con una frecuencia de actualización de alrededor de 200 ms. Necesito actualizar continuamente el valor de los datos en el campo de texto del tablero. Mi tablero está construido en Django.

He leído mucho sobre Channels , pero todos los tutoriales son sobre aplicaciones de chat. Sé que necesito implementar WebSockets que básicamente tendrán una conexión abierta y obtendrán los datos. Con la aplicación de chat, tiene sentido, pero no he encontrado nada que hable sobre la base de datos MySQL .

También leí sobre mysql-events . Dado que los datos que ingresan a la tabla provienen de un sensor externo, no entiendo cómo puedo monitorear una tabla dentro de Django, es decir, cada vez que se agrega una nueva fila en la tabla, necesito que se inserte esa nueva en base a una columna valor.

¿Alguna idea sobre cómo hacerlo? He revisado muchos artículos y no pude encontrar algo específico para este requisito.

over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Cree un microservicio para conexiones Websockets

Otra forma de implementar esta función es crear un microservicio WebSocket independiente.

La arquitectura Monolyth no es lo que necesitas aquí. Cada WebSocket abrirá una conexión a Django (que estará detrás del proxy inverso y el servidor: NGINX y Gunicorn ej.). Si su cliente abre dos pestañas en el navegador, obtendrá 2 conexiones, etc.

Mi recomendación es modificar la pila tecnológica (sí, soy un gran admirador de Django, pero hay muchas soluciones geniales para construir WS):

  1. Use Starlette listo para el marco de producción con WebSockets integrados: https://www.starlette.io/websockets/
  2. Use uvicorn.workers.UvicornWorker for Gunicorn para administrar su aplicación ASGI: esta es solo 1 línea de código, como gunicorn -w 4 -k uvicorn.workers.UvicornWorker --log-level warning example:app
  3. maneje sus conexiones WebSocket y use ejemplos para solicitar actualizaciones de la base de datos: https://www.starlette.io/database/
  4. Use un código Javascript súper simple para abrir la conexión del lado del cliente y escuchar las actualizaciones.

Entonces, sus modelos, plantillas, la vista será administrada por Django. Starlette administrará sus conexiones WebSocket de forma asincrónica nativa. Si está interesado en esa opción, puedo darle instrucciones detalladas.

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda